package proyectosudp.src;

import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Hashtable;

/**
 * Clase que permitirá transportar los datos en forma de bytes entre el cliente y el servidor en ambos sentidos
 */

public class Dto implements Serializable{
    private String mensaje; //el mensaje que indica el tipo de operación a realizar
    private String usuario; //el usuario que está realizando la operación
    private String datoConsulta;


    private String log; //la cadena de texto que se debe ingresar en el log
    private char privilegio; // privilegio que tiene el usuario en el sistema: 'C' es consulta y 'E' es edición
    private transient ArrayList<Object> listado; //listado en el que se almacenan los objetos ya sea para crear, actualizar, listar o consultar. Si se trata de crear, consultar o modificar, el listado solo contendrá un objeto
    private String usuarioConsultado;
    private String datoConsultado;
    private String unidadConsultada;
    private String grupoInvConsultado;


    private String unidadesConsultadas;
    private String respuesta;

//    private Usuario usuarioObject;

    public Dto() {
//        this.usuario = new String("");
//        this.mensaje = new String("");
//        this.log = new String("");
    }


    public ArrayList<Object> getListado() {
        return listado;
    }

    public void setListado(ArrayList<Object> listado) {
        this.listado = listado;
    }

    public String getLog() {
        return log;
    }

    public void setLog(String log) {
        this.log = log;
    }

    public String getMensaje() {
        return mensaje;
    }

    public void setMensaje(String mensaje) {
        this.mensaje = mensaje;
    }

    public char getPrivilegio() {
        return privilegio;
    }

    public void setPrivilegio(char privilegio) {
        this.privilegio = privilegio;
    }

    public String getUsuario() {
        return usuario;
    }

    public void setUsuario(String usuario) {
        this.usuario = usuario;
    }


//    /**
//     * @return the usuarioObject
//     */
//    public Usuario getUsuarioObject() {
//        return usuarioObject;
//    }
//
//    /**
//     * @param usuarioObject the usuarioObject to set
//     */
//    public void setUsuarioObject(Usuario usuarioObject) {
//        this.usuarioObject = usuarioObject;
//    }
//    private void writeObject(ObjectOutputStream stream) throws IOException {
//        stream.defaultWriteObject();
//        stream.writeObject(listado);
//    }
//
//  private void readObject(ObjectInputStream stream) throws IOException,
//      ClassNotFoundException {
//    stream.defaultReadObject();
//    listado = (ArrayList<Object>) stream.readObject();
//  }

    /**
     * @return the usuarioConsultado
     */
    public //listado en el que se almacenan los objetos ya sea para crear, actualizar, listar o consultar. Si se trata de crear, consultar o modificar, el listado solo contendrá un objeto
    String getUsuarioConsultado() {
        return usuarioConsultado;
    }

    /**
     * @param usuarioConsultado the usuarioConsultado to set
     */
    public void setUsuarioConsultado(String usuarioConsultado) {
        this.usuarioConsultado = usuarioConsultado;
    }

    /**
     * @return the unidadesConsultadas
     */
    public String getUnidadesConsultadas() {
        return unidadesConsultadas;
    }

    /**
     * @param unidadesConsultadas the unidadesConsultadas to set
     */
    public void setUnidadesConsultadas(String unidadesConsultadas) {
        this.unidadesConsultadas = unidadesConsultadas;
    }

    /**
     * @return the respuesta
     */
    public String getRespuesta() {
        return respuesta;
    }

    /**
     * @param respuesta the respuesta to set
     */
    public void setRespuesta(String respuesta) {
        this.respuesta = respuesta;
    }
    public String getDatoConsulta() {
        return datoConsulta;
    }

    public void setDatoConsulta(String datoConsulta) {
        this.datoConsulta = datoConsulta;
    }
     public String getProyectoConsultado() {
        return datoConsultado;
    }

    public void setProyectoConsultado(String proyectoConsultado) {
        this.datoConsultado = proyectoConsultado;
    }
    public String getUnidadConsultada() {
        return unidadConsultada;
    }

    public void setUnidadConsultada(String unidadConsultada) {
        this.unidadConsultada = unidadConsultada;
    }
     public String getGrupoInvConsultado() {
        return grupoInvConsultado;
    }

    public void setGrupoInvConsultado(String grupoInvConsultado) {
        this.grupoInvConsultado = grupoInvConsultado;
    }
}
